/**
 * Copyright (c) 2016-2019 人人开源 All rights reserved.
 *
 * https://www.renren.io
 *
 * 版权所有，侵权必究！
 */

package com.xc.hotelmgr.datapusherali.utils;

/**
 * 常量
 * @author kemmy
 */
public class Constant {
    //出错重试次数
    public static final Integer TRYCNT = 3;
    //出错重试休眠时间
    public static final Integer SLEEP_TIME = 3000;

    public enum RedisKey {
        //店铺下通用加价配置
        STORE_USE_ADD_PRICE("0_cfg_comm_add_price"),

        //店铺下RP所使用的加价配置
        STORE_RP_USE_ADD_PRICE("1_store_rp_use_add_price"),

        //店面酒店加价配置
        STORE_HTL_ADD_PRICE("1_cfg_htl_add_price"),

        //店铺下酒店所使用的自定义价格计划
        STORE_HTL_USE_OURPLAN("1_store_htl_use_ourplan"),

        //店铺下酒店所使用的自定义价格计划加价配置
        STORE_CFG_CUSTOM_OURPLAN("1_cfg_custom_rp"),

        //RP所所属酒店及房型
        RP_HTL_ROOM("1_rp_blong_htl_room"),

        //价量态所使用的key前缀
        RPS_PREFIX("r");


        private String value;

        RedisKey(String value) {
            this.value = value;
        }

        public String getValue() {
            return value;
        }
    }


    public enum StoreRPUseAddPrice {
        /**
         * 酒店加价配置
         */
        HTL("1"),
        /**
         * 自定义价格加价配置
         */
        OURPLAN("2"),
        /**
         * 通用加价配置
         */
        COMM("3");

        private String value;

        StoreRPUseAddPrice(String value) {
            this.value = value;
        }

        public String getValue() {
            return value;
        }

        /**
         * 通过value取枚举
         *
         * @param value
         * @return
         */
        public static StoreRPUseAddPrice getStatusByValue(String value) {
            if (value == null) {
                return null;
            }
            for (StoreRPUseAddPrice enums : StoreRPUseAddPrice.values()) {
                if (enums.getValue().equals(value)) {
                    return enums;
                }
            }
            return null;
        }
    }
}
